1. Field of the Invention
The present invention relates to a node device (including a router device for relaying packets) for transferring packets from one logical network to another logical network, and a packet transfer control method to be carried out at a node device.
2. Description of the Background Art
In the packet communication network for transferring packets on a network layer such as that of the Internet protocol, logical networks are defined. Within the same logical network, the packet transfer is carried out in a prescribed frame format according to a protocol (Ethernet, point-to-point link, ATM, frame relay, etc.) of a datalink layer constituting that logical network.
On the other hand, in a case of transferring a packet to the different logical network, an address information of the packet is analyzed at a router located on a boundary between logical networks, and the packet is relayed by being transferred toward a prescribed logical network. Consequently, a packer relay transfer processing based on the address analysis at a router will be carried out as many times as a number of logical network boundaries that the packet passes through.
As the datalink network constituting individual logical network becomes faster, there arises a problem that such a relay transfer processing based on the address analysis at a router becomes a bottleneck for the overall transfer performance. In order to resolve this problem, there has been a proposition of a method for carrying out a cut-through transfer in which the address analysis processing for each packet at a router is not required so as to significantly improve a router processing performance, as described in detail in the IETF RFC 1953 and 1954.
At a router that carries out this cut-through transfer scheme, the information such as an address and an upper level protocol is analyzed for the first one or few packets, and prescribed control messages are exchanged with a neighboring router (a previous or next hop router belonging to the identical logical network) on a route of the analyzed packet flow so as to store the information on the analyzed packet flow by mapping it to a header value (a VPI/VCI value of a cell header in a case of ATM) that can be processed at high speed.
Then, the transfer processing for subsequent packets belonging to that packet flow are carried out according to the stored header value that can be processed at high speed. By carrying out the above processing at each router on the route of the packet flow, it becomes possible to carry out the fast transfer (referred to as a cut-through transfer hereafter) processing for packets other than the first few packets. Also, by notifying a request on the communication quality from an end-host, it also becomes possible to provide a cut-through path that satisfies a requested communication quality with respect to an end-to-end flow.
The above described packet transfer control method sets up a cut-through path for each communication between specific transmitting host and receiving host, for example, so that a number of cut-through paths to be managed by the router can be potentially large. Also, there is a need to carry out the address analysis processing for each packet just as in the conventional router until the cut-through path is established, so that there can be a router at which the address analysis processing for each packet may cause the bottleneck.
For this reason, there is also a proposition of a method in which a cut-through path between specific routers is set up in advance at a time of the network activation, for example, instead of setting up a dedicated cut-through path for a specific end-to-end packet flow at a time of detecting that packet flow. In this case, it is impractical to set up a cut-through path dedicatedly with respect to every conceivable end-to-end packet flow, so that a cut-through path will be set up to have a general availability (such that all packet flows destined to a specific logical network from one router can use it commonly, for example). Consequently, various end-to-end packet flows are going to share the cut-through path formed from one router to another router of another logical network.
In this method, it is possible to eliminate a possibility for causing the bottleneck due to the conventional address analysis processing until the cut-through path is formed as encountered in the earlier described method. However, in this method, when a scale of the network is increased, a number of cut-through paths to be set up in advance also increases, so that it is preferable to limit a number of cut-through paths to a reasonable level (such that the cut-through path is set up in advance only for those packet flows which are destined to a logical network which is known to have a large traffic, for example). In such a case, when some end-to-end packet flow occurs, if there is no cut-through path set up in advance on the route of that packet flow, the conventional transfer processing based on the address analysis for each packet must be carried out at routers on that route, and therefore the problem of the performance bottleneck arises again.
Also, in this method for setting up a cut-through path with a certain degree of general availability, it is impossible to provide a dedicated cut-through path that satisfies the requested communication quality with respect to a specific end-to-end packet flow.